package br.com.mensures.mbean;

import java.util.ArrayList;
import java.util.List;
import java.util.logging.Logger;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;

import org.primefaces.event.FlowEvent;

import br.com.mensures.vo.ColaboradorVO;
import br.com.mensures.vo.EmpresaVO;

@ManagedBean
public class EmpresaMBean {

	private EmpresaVO empresa = new EmpresaVO();
	private ColaboradorVO colaborador = new ColaboradorVO();
	private List<ColaboradorVO> colaboradores = new ArrayList<ColaboradorVO>();
	private boolean skip;
	private static Logger logger = Logger.getLogger(EmpresaMBean.class
			.getName());

	public String reinit() {  
        colaborador = new ColaboradorVO();  
          
        return null;  
    }
	
	public EmpresaVO getEmpresa() {
		return empresa;
	}

	public void setEmpresa(EmpresaVO empresa) {
		this.empresa = empresa;
	}

	public ColaboradorVO getColaborador() {
		return colaborador;
	}

	public void setColaborador(ColaboradorVO colaborador) {
		this.colaborador = colaborador;
	}

	public void save(ActionEvent actionEvent) {
		// Persist user

		FacesMessage msg = new FacesMessage("Successful", "Welcome :"
				+ empresa.getNome());
		FacesContext.getCurrentInstance().addMessage(null, msg);
	}

	public boolean isSkip() {
		return skip;
	}

	public void setSkip(boolean skip) {
		this.skip = skip;
	}

	public String onFlowProcess(FlowEvent event) {
		logger.info("Current wizard step:" + event.getOldStep());
		logger.info("Next step:" + event.getNewStep());

		if (skip) {
			skip = false; // reset in case user goes back
			return "confirm";
		} else {
			return event.getNewStep();
		}
	}

	public List<ColaboradorVO> getColaboradores() {
		return colaboradores;
	}

	public void setColaboradores(List<ColaboradorVO> colaboradores) {
		this.colaboradores = colaboradores;
	}
}
